<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <script>
        // filter的使用 ：可以循环过滤数据；
        var arr = [1, 2, 3, 4, 5];
        // var res = arr.filter(function (item, key, arr) {
        //     // console.log(item,key,arr);
        //     return item > 3;
        // })
        // console.log(res);


        // 实现一个filter ： 根据回调函数的返还值 ，选择 是否要把item 收集起来；

        function myFilter(arr, cb) {
            var newarr = []; // 会根据 cb的执行结果 选择需不需要把 arr[i] item 收集起来
            for (var i = 0; i < arr.length; i++) {
                var reslut = cb(arr[i], i, arr);
                // cb = function (item, key, arr) { console.log(item, key, arr);return item>3;}
                if (reslut) {  // 会根据 reslut的 true 或者false 选择需不需要收集 arr[i]的值；
                    newarr.push(arr[i])
                }
            }
            return newarr;
        }

        var res = myFilter(arr, function (item, key, arr) {
            console.log(item, key, arr);
            return item>3;
        })
        console.log(res);





    </script>
</body>

</html>